const { resolve } = require('path');
const path = require('path');
const { CleanWebpackPlugin } = require('clean-webpack-plugin');

module.exports = {
  mode: 'development', // 'development' or 'production'
  entry: {
    'a': './www/a.js'
  },
  output: {
    filename: '[name].js',// contenthash
    path: resolve(__dirname, 'dist')
  },
  // 开启devServer
  devServer: {
    contentBase: path.join(__dirname, 'www'),
    host: 'localhost',
    port: 5000,
    hot: true,
    // 可选，即使代码没生效，也不刷新浏览器
    // hotOnly: true,
    proxy: {
      '/uniform-api': {
        target: 'http://localhost:4206/',
        changeOrigin: true
      }
    },
    // publicPath: '/assets/' localhost:5001/assets/index.js
    historyApiFallback: true // 让所有的404请求的重定向到index.html 可以使用正则精确匹配
  },
  // production模式下默认开启
  // optimization: {
  //   // 优化导出的模块
  //   usedExports: true
  // },
  // 开启调试
  // 开发环境：cheap-module-eval-source-map
  // 生产环境：cheap-module-source-map
  // devtool: 'cheap-module-eval-source-map',
  module: {
    rules: [
      {
        test: /\.js$/,
        // node_modules里的代码基本都是经过了编译的，所以忽略
        exclude: /node_modules/,
        // loader: 'babel-loader'
      }
    ]
  },
  plugins: [
    new CleanWebpackPlugin()
  ]
}